gempy.core.data.StructuralFrame

class gempy.core.data.StructuralFrame(structural_groups: list[StructuralGroup], color_gen: ColorsGenerator)[source]

Represents a structural frame, which is a collection of structural groups that constitute a geological model.

structural_groups

List of structural groups that constitute the geological model.

Type:

list[StructuralGroup]

color_generator

Instance of ColorsGenerator used for assigning distinct colors to different structural elements.

Type:

ColorsGenerator

is_dirty

Boolean flag indicating if the structural frame has been modified.

Type:

bool

Examples using gempy.core.data.StructuralFrame

Video Tutorial “code-along”: Modeling step by step

Video Tutorial "code-along": Modeling step by step

Video Tutorial “code-along”: Faults

Video Tutorial "code-along": Faults

Video Tutorial “code-along”: Onlap relations

Video Tutorial "code-along": Onlap relations

Basics: Data Classes and Modeling API

Basics: Data Classes and Modeling API

Building a Model from Scratch

Building a Model from Scratch

Alès Basin, France

Alès Basin, France

Claudius, Queensland, Australia

Claudius, Queensland, Australia

Hecho, Spanish Pyrenees

Hecho, Spanish Pyrenees

Mourèze, France

Mourèze, France

Perth Basin, Western Australia

Perth Basin, Western Australia

Methods

__init__(structural_groups, color_gen)

append_group(group)

deserialize_binary(data, constructor)

from_data_tables(surface_points, orientations)

get_element_by_name(element_name)

get_group_by_element(element)

get_group_by_name(group_name)

initialize_default_structure()

Initialize the default structure.

insert_group(index, group)

restore_fault_relations_from_names(pending)

Resolve fault_relation group names back to StructuralGroup references after deserialization.

serialized_fault_relations()

Context manager that temporarily converts fault_relations for safe JSON serialization.

Attributes

basement_color

binary_meta_data

color_generator

element_id_name_map

Returns a dictionary mapping element IDs to names.

element_name_id_map

Returns a dictionary mapping element names to IDs.

elements_colors

Returns a list of colors assigned to each structural element.

elements_colors_contacts

Returns a list of colors assigned to each structural element for contact representation.

elements_colors_orientations

Returns a list of colors assigned to each structural element for orientation representation.

elements_colors_volumes

Returns a list of colors assigned to each structural element for volume representation.

elements_enumerator

Returns an array of enumeration for all structural elements.

elements_ids

Returns an array of IDs for all structural elements.

elements_names

Returns a list of names of all structural elements.

fault_relations

Returns a array describing the fault relations between the structural groups.

faults_input_data

Returns a descriptor for the input data, detailing the relations and faults between groups.

group_is_fault

Returns a list of booleans indicating if each structural element is a fault.

group_is_lithology

Returns a list of booleans indicating if each structural element is a lithology.

groups_structural_relation

Returns a list of the structural relations for each group.

groups_to_mapper

Returns a dictionary mapping each structural group to its corresponding elements.

input_data_descriptor

Returns a descriptor for the input data, detailing the relations and faults between groups.

input_tables_binary

is_dirty

n_elements

Returns the total number of elements in the structural frame.

number_of_elements

Returns the total number of elements in the structural frame.

number_of_elements_per_group

Returns an array with the number of elements for each structural group.

number_of_orientations_per_group

Returns an array with the number of orientations for each structural group.

number_of_points_per_element

Returns an array with the number of points for each structural element.

number_of_points_per_group

Returns an array with the number of points for each structural group.

orientations

orientations_colors_per_item

Returns a list of colors assigned to each orientation across structural elements.

orientations_copy

Returns an OrientationsTable for all orientations across the structural elements.

structural_elements

Returns a list of all structural elements across the structural groups.

structural_elements_filtered

Returns a list of all structural elements across the structural groups.

surface_points

surface_points_colors_per_item

Returns a list of colors assigned to each surface point across structural elements.

surface_points_copy

Returns a SurfacePointsTable for all surface points across the structural elements.

surfaces

Returns a list of all surfaces in the structural elements.

surfaces_df

Returns a DataFrame representation of all surfaces across structural elements.

volume_elements

Returns structural elements that have lithology volume (excludes fault elements, includes basement).

volume_elements_colors

Returns colors of volume elements in structural order.

volume_elements_enumerator

Returns 1-based sequential enumeration for volume elements.

volume_elements_names

Returns names of volume elements in structural order.

structural_groups

__init__(structural_groups: list[StructuralGroup], color_gen: ColorsGenerator)[source]
classmethod initialize_default_structure() StructuralFrame[source]

Initialize the default structure.

This method is used to initialize the default structure for a StructuralFrame object.

Parameters:

None

Returns:

A StructuralFrame object representing the default structure.

Return type:

‘StructuralFrame’

Example

structural_frame = initialize_default_structure()

property structural_elements: list[StructuralElement]

Returns a list of all structural elements across the structural groups.

property structural_elements_filtered: list[StructuralElement]

Returns a list of all structural elements across the structural groups.

property n_elements: int

Returns the total number of elements in the structural frame.

property fault_relations: ndarray

Returns a array describing the fault relations between the structural groups.

property group_is_fault: list[bool]

Returns a list of booleans indicating if each structural element is a fault.

property group_is_lithology: list[bool]

Returns a list of booleans indicating if each structural element is a lithology.

property input_data_descriptor

Returns a descriptor for the input data, detailing the relations and faults between groups.

property faults_input_data

Returns a descriptor for the input data, detailing the relations and faults between groups.

property groups_structural_relation: list[StackRelationType]

Returns a list of the structural relations for each group.

property number_of_points_per_element: ndarray

Returns an array with the number of points for each structural element.

property number_of_points_per_group: ndarray

Returns an array with the number of points for each structural group.

property number_of_orientations_per_group: ndarray

Returns an array with the number of orientations for each structural group.

property number_of_elements_per_group: ndarray

Returns an array with the number of elements for each structural group.

property surfaces: list[StructuralElement]

Returns a list of all surfaces in the structural elements.

property number_of_elements: int

Returns the total number of elements in the structural frame.

property elements_names: list[str]

Returns a list of names of all structural elements.

property elements_enumerator: ndarray

Returns an array of enumeration for all structural elements.

property elements_ids: ndarray

Returns an array of IDs for all structural elements.

property surface_points_copy: SurfacePointsTable

Returns a SurfacePointsTable for all surface points across the structural elements. This is a copy!

property orientations_copy: OrientationsTable

Returns an OrientationsTable for all orientations across the structural elements.

property element_id_name_map: dict[int, str]

Returns a dictionary mapping element IDs to names.

property element_name_id_map: dict[str, int]

Returns a dictionary mapping element names to IDs.

property elements_colors: list[str]

Returns a list of colors assigned to each structural element. Used in matplotlib

property elements_colors_volumes: list[str]

Returns a list of colors assigned to each structural element for volume representation. Used in pyvista

property elements_colors_contacts: list[str]

Returns a list of colors assigned to each structural element for contact representation. Used in many places

property elements_colors_orientations: list[str]

Returns a list of colors assigned to each structural element for orientation representation. Used to paint orientations in pyvista

property volume_elements: list[StructuralElement]

Returns structural elements that have lithology volume (excludes fault elements, includes basement).

property volume_elements_names: list[str]

Returns names of volume elements in structural order.

property volume_elements_colors: list[str]

Returns colors of volume elements in structural order.

property volume_elements_enumerator: ndarray

Returns 1-based sequential enumeration for volume elements.

property surface_points_colors_per_item: list[str]

Returns a list of colors assigned to each surface point across structural elements. Used in matplotlib

property orientations_colors_per_item: list[str]

Returns a list of colors assigned to each orientation across structural elements. Used in matplotlib

property groups_to_mapper: dict[str, list[str]]

Returns a dictionary mapping each structural group to its corresponding elements.

property surfaces_df: pd.DataFrame

Returns a DataFrame representation of all surfaces across structural elements.

serialized_fault_relations()[source]

Context manager that temporarily converts fault_relations for safe JSON serialization.

restore_fault_relations_from_names(pending: dict[int, list[str]])[source]

Resolve fault_relation group names back to StructuralGroup references after deserialization.